/*
 * @Author: yxfan
 * @Date: 2025-03-01 14:21:26
 * @LastEditTime: 2025-03-01 14:21:42
 * @FilePath: \umi-demo\src\components\interface.ts
 * @Description:
 */
import React from 'react';

// 标签项定义
export interface TabItem {
    key: string;
    label: React.ReactNode;
    disabled?: boolean;
    closable?: boolean;
}

// 标签尺寸信息
export interface TabSizeInfo {
    width: number;
    height: number;
    left: number;
    top: number;
}

// 带有right属性的标签尺寸信息
export interface TabOffset extends TabSizeInfo {
    right: number;
}

// 标签尺寸Map
export type TabSizeMap = Map<string, TabSizeInfo>;

// 标签偏移量Map
export type TabOffsetMap = Map<string, TabOffset>;

// OverflowTabs组件属性
export interface OverflowTabsProps {
    tabs: TabItem[];
    activeKey?: string;
    onChange?: (key: string) => void;
    className?: string;
    style?: React.CSSProperties;
}
